Timm Bäder [Tue, 22 Nov 2016 20:00:40 +0000 (21:00 +0100)]
spinbutton: Remove _get_panels
Timm Bäder [Wed, 23 Nov 2016 17:05:09 +0000 (18:05 +0100)]
Remove gtk_widget_get_preferred_height_and_baseline_for_width
It's just a wrapper around gtk_widget_measure nowadays.
Timm Bäder [Mon, 28 Nov 2016 18:32:10 +0000 (19:32 +0100)]
togglebutton: Remove unused defines
Debarshi Ray [Fri, 2 Dec 2016 15:38:05 +0000 (16:38 +0100)]
flowbox: Fix get_child_at_index crash with an invalid index
https://bugzilla.gnome.org/show_bug.cgi?id=775525
Daniel Boles [Thu, 1 Dec 2016 12:58:29 +0000 (12:58 +0000)]
ComboBox: Fix the whitespace fix
Daniel Boles [Thu, 1 Dec 2016 12:38:43 +0000 (12:38 +0000)]
ComboBox: Do not select item before menu realised
For a menu mode CB with wrap_width == 0 and an active item, that item is
selected in gtk_combo_box_menu_popup. Selection causes the MenuShell to
activate and hence take a grab. This was done before the menu was popped
up. A patch distributed in Debian sid - after being proposed on our BZ -
revealed that on the 1st popup of any such ComboBox, within grab_add,
the MenuShell's toplevel's GdkWindow is NULL. This causes a Gdk-CRITICAL
assertion fail on the 1st time opening any such CB, on Debian and if
that patch were merged to GTK+. By selecting after popup, we ensure the
MenuShell is realised before its grab_add and so avoid the critical.
https://bugzilla.gnome.org/show_bug.cgi?id=771242
Daniel Boles [Thu, 1 Dec 2016 12:36:30 +0000 (12:36 +0000)]
ComboBox: Fix whitespace
* Replace tabs for indentation with spaces
* Remove whitespace at ends of lines
Benjamin Otte [Wed, 30 Nov 2016 22:52:54 +0000 (23:52 +0100)]
cssshadows: Fix extents computation
Someody busted this code a *lot*.
Benjamin Otte [Wed, 30 Nov 2016 22:03:13 +0000 (23:03 +0100)]
image: Don't translate twice
The animation can pass x/y through to the render_icon() function, so
don't gtk_snapshot_translate() it.
Matthias Clasen [Wed, 30 Nov 2016 18:43:54 +0000 (13:43 -0500)]
wayland: Don't warn if we loose the compositor connection
And instead, exit cleanly. This avoids filling the logs with
these warnings from every single application that has a
connection to the compositor.
Matthias Clasen [Wed, 30 Nov 2016 18:43:17 +0000 (13:43 -0500)]
x11: Don't warn if the display is closed
This causes a storm of warnings from all applications in the logs
whenever the display goes away, and is not useful.
William Hua [Wed, 30 Nov 2016 15:06:43 +0000 (10:06 -0500)]
gsk: ensure libgsk-4.la before running g-ir-scanner
https://bugzilla.gnome.org/show_bug.cgi?id=775410
Benjamin Otte [Tue, 29 Nov 2016 03:51:07 +0000 (04:51 +0100)]
gskrenderer: Add GError argument to gsk_renderer_realize()
This way, we don't spam criticals when GL is not available. Instead, we
print a useful debug message to stderr and continue with the Cairo renderer.
Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>
Benjamin Otte [Tue, 29 Nov 2016 03:27:21 +0000 (04:27 +0100)]
gsk: Add gsk_renderer_new_for_window()
and remove gsk_renderer_get_for_display().
This new function returns a realized renderer. Because of that, GSK can
catch failures to realize, destroy the renderer and try another one.
Or in short: I can finally use GTK on Weston with the nvidia binary
drivers again.
Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>
Benjamin Otte [Tue, 29 Nov 2016 02:36:33 +0000 (03:36 +0100)]
gsk: Change gsk_renderer_realize()
Instead of having a gsk_renderer_set_window() call, pass the window to
realize(). This way, the realization can fail with the wrong window.
Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>
Benjamin Otte [Wed, 30 Nov 2016 14:52:22 +0000 (15:52 +0100)]
gdk: Make GdkDrawingContext not per-backend
No backend is using it, and we can put the backend-specific drawing code
into GdkGLContext.
Benjamin Otte [Wed, 30 Nov 2016 14:08:12 +0000 (15:08 +0100)]
gdkwindow: Remove unused vfunc
GdkGLContext knows how to realize itself.
Benjamin Otte [Tue, 29 Nov 2016 10:57:11 +0000 (11:57 +0100)]
flowbox: Size gadget realtive to widget->window
This fixes a few clipping issues and syncs code with GtkListBox.
Benjamin Otte [Tue, 29 Nov 2016 10:46:32 +0000 (11:46 +0100)]
listbox: Move the priv->gadget allocation
It used to be relative to the window, now it is relative to the widget.
That is necessary so the snapshot fuction doesn't confuse coordinate
systems.
Benjamin Otte [Tue, 29 Nov 2016 12:00:48 +0000 (13:00 +0100)]
cairorenderer: Remove nonexisting function from header
Olivier Fourdan [Tue, 29 Nov 2016 13:21:57 +0000 (14:21 +0100)]
wayland: Check for subsurface looking up the toplevel
gdk_window_get_toplevel() walks up the windows tree looking for the
corresponding toplevel window, but needs to account for subsurfaces as
well on Wayland.
https://bugzilla.gnome.org/show_bug.cgi?id=775319
Emmanuele Bassi [Tue, 29 Nov 2016 23:29:10 +0000 (23:29 +0000)]
demos: Remove undefined function call
The gtk_container_set_border_width() function has been removed from
the GTK+ 4.x API.
Matthias Clasen [Tue, 29 Nov 2016 21:39:21 +0000 (16:39 -0500)]
gtk-demo: Add a demo for tabs
One of the least-appreciated features in pango.
It deserves a demo.
Matthias Clasen [Tue, 29 Nov 2016 19:42:35 +0000 (14:42 -0500)]
Don't leak a pixbuf reference in dnd
https://bugzilla.gnome.org/show_bug.cgi?id=775316
Matthias Clasen [Mon, 28 Nov 2016 20:00:10 +0000 (15:00 -0500)]
Fix reference handling in GtkScaleButton
We were leaking the adjustment, since we confuse ourselves
with a property whose initial value comes out of a template.
Stop doing that.
https://bugzilla.gnome.org/show_bug.cgi?id=775212
William Hua [Mon, 28 Nov 2016 02:31:21 +0000 (21:31 -0500)]
mir: fix build failures
Sébastien Wilmet [Sat, 26 Nov 2016 11:23:14 +0000 (12:23 +0100)]
docs: fix a parameter name of GtkEntry::populate-popup
Trivial commit.
The documentation block refers to @widget, not @popup. @widget is a
better name since the type is GtkWidget.
Sébastien Wilmet [Fri, 25 Nov 2016 20:32:09 +0000 (21:32 +0100)]
docs: fix docs of functions to convert layout_index <-> text_index
Trivial commit.
The documentation was swapped. The documentation for the parameters and
the return values is good.
Benjamin Otte [Sat, 26 Nov 2016 10:51:30 +0000 (11:51 +0100)]
rendericon: Pass the scale factor when rendeirng textures
Fixes icon rendeirng on hidpi.
Cosimo Cecchi [Fri, 25 Nov 2016 17:53:21 +0000 (18:53 +0100)]
Adwaita: make rubberband selection work again for libgd apps
libgd views still use the old style class.
Matthias Clasen [Fri, 25 Nov 2016 13:55:33 +0000 (08:55 -0500)]
Make gtk-encode-symbolic-svg work for icons with dotted names
We were producing org.symbolic.png from org.gnome.Recipes-symbolic.svg,
which is not useful. Look for the last dot in the original name, to
produce the expected org.gnome.Recipes-symbolic.symbolic.png instead.
Dominique Leuenberger [Thu, 24 Nov 2016 18:50:34 +0000 (19:50 +0100)]
Build: Add wayland to GSKs dependencies
gskrenderer.c includes gdk/wayland/gdkwayland.h and as a consequence
we need to be able to locate wayland's headers in case they are not
in standard location.
https://bugzilla.gnome.org/show_bug.cgi?id=775038
Benjamin Otte [Thu, 24 Nov 2016 17:31:11 +0000 (18:31 +0100)]
gdk: Rewrite docs some more
Now gdk_window_process_updates() isn't mentioned either.
GDK takes care of redrawing, not you!
Benjamin Otte [Thu, 24 Nov 2016 14:41:19 +0000 (15:41 +0100)]
inspector: Remove leftover GDK_PRIVATE_CALL()s
Benjamin Otte [Thu, 24 Nov 2016 14:26:15 +0000 (15:26 +0100)]
gdk: Get rid of all mentions of process_all_updates()
Olivier Fourdan [Wed, 23 Nov 2016 13:55:40 +0000 (14:55 +0100)]
wayland: Place subsurfaces relative to their parent
Now that subsurfaces can be created as child of another GdkWindow (and
not just the root window), they must be placed according to the location
of their parent, i.e. the abs_x/abs_y must be updated and taken int
account when placing and moving subsurfaces under Wayland.
https://bugzilla.gnome.org/show_bug.cgi?id=774917
Benjamin Otte [Thu, 24 Nov 2016 03:32:26 +0000 (04:32 +0100)]
gdk: Use stricter checks for begin_draw_frame()
We don't support drawing on child windows, so make sure nobody tries.
Matthias Clasen [Thu, 24 Nov 2016 00:31:16 +0000 (19:31 -0500)]
Drop the GDK_PRIVATE_CALL mechanism
We don't need to do this extra complication anymore, since
we're now living inside a single shared library.
Matthias Clasen [Thu, 24 Nov 2016 00:16:16 +0000 (19:16 -0500)]
inspector: Respect text-scaling-factor value initially
This was pointed out in
https://bugzilla.gnome.org/show_bug.cgi?id=774893
Florian Müllner [Wed, 23 Nov 2016 15:34:15 +0000 (16:34 +0100)]
GtkLabelAccessible: Initialize link before setting parent
Since at-spi-atk commit
96621a5e95 fixed PropertyChange notifications
for AccessibleParent, setting the parent will result in a call to
ref_state_set() which assumes that the object is fully initialized.
https://bugzilla.gnome.org/show_bug.cgi?id=774939
Christian Hergert [Sun, 20 Nov 2016 23:40:10 +0000 (15:40 -0800)]
inspector: ensure controller is a GtkGesture
While GtkEventController implementations today are all GtkGesture, it is
possible to create a GtkEventController manually. This is an extrac check
to ensure we only add gestures to the list.
https://bugzilla.gnome.org/show_bug.cgi?id=774760
Stas Solovey [Wed, 23 Nov 2016 20:42:59 +0000 (20:42 +0000)]
Update Russian translation
(cherry picked from commit
dd3cf38c53239cdd93f5ff887120ee453292fe5d)
Matthias Clasen [Wed, 23 Nov 2016 19:48:17 +0000 (14:48 -0500)]
menu: Don't leak check menu items
Pointed out in
https://bugzilla.gnome.org/show_bug.cgi?id=774686
Matthias Clasen [Wed, 23 Nov 2016 19:44:37 +0000 (14:44 -0500)]
notebook: Don't leak arrow gadgets
This was pointed out in
https://bugzilla.gnome.org/show_bug.cgi?id=774743
Matthias Clasen [Wed, 23 Nov 2016 18:55:28 +0000 (13:55 -0500)]
text handle: Don't leak adjustments
This can happen if the weak pointer is triggered before the
adjustments are unset. Pointed out in
https://bugzilla.gnome.org/show_bug.cgi?id=774790
Benjamin Otte [Wed, 23 Nov 2016 18:32:27 +0000 (19:32 +0100)]
gdk: Only draw toplevels
Simplify gdk_window_paint_on_clock () to only draw the toplevel. We do
no longer draw child windows and offscreens no longer exist.
Benjamin Otte [Wed, 23 Nov 2016 18:10:34 +0000 (19:10 +0100)]
API: Remove gdk_window_process_all_updates()
It's completely unused since we have a frame clock.
Benjamin Otte [Wed, 23 Nov 2016 18:02:58 +0000 (19:02 +0100)]
API: gdk: Remove gdk_window_process_updates()
We have a frame clock now.
Benjamin Otte [Sun, 20 Nov 2016 19:24:07 +0000 (20:24 +0100)]
drawingcontext: Add a private struct
This is to control what backends can and cannot access.
Benjamin Otte [Tue, 22 Nov 2016 18:31:03 +0000 (19:31 +0100)]
API: Remove gtk_cairo_should_draw_window()
The answer is: Yes.
Benjamin Otte [Wed, 23 Nov 2016 00:07:25 +0000 (01:07 +0100)]
gdk: Move GdkDrawingContext definition to gdktypes.h
Benjamin Otte [Wed, 23 Nov 2016 07:25:42 +0000 (08:25 +0100)]
window: unrealize renderer before destroying GDK window
We need to unrealize the children manually for that to happen, but so it
goes.
The order is necessary because we want the renderer to still be alive
while children are unrealizing.
Lapo Calamandrei [Wed, 23 Nov 2016 16:25:18 +0000 (17:25 +0100)]
HC: progressbar style fix
Reset styling on the progress node when trough node has the `empty'
styleclass.
See https://bugzilla.gnome.org/show_bug.cgi?id=774695
Lapo Calamandrei [Wed, 23 Nov 2016 15:39:14 +0000 (16:39 +0100)]
HC: really use radial-gradient() in place of -gtk-gradient()
Regenerate the css from sass..
Lapo Calamandrei [Wed, 23 Nov 2016 15:00:57 +0000 (16:00 +0100)]
Adwaita: progressbar style fix
Reset styling on the progress node when trough node has the `empty'
styleclass.
See https://bugzilla.gnome.org/show_bug.cgi?id=774695
Andrew Chadwick [Sun, 20 Nov 2016 01:57:07 +0000 (01:57 +0000)]
wintab: init only after the display is assigned
Only attempt to initialize Wintab after the display manager announces
that the first default display has been set. Fixes a segfault during
initialization of specific tablet drivers' wintab32.dlls. Add assertions
and verbose comments explaining this nonsense because this stuff is a
pain to have to keep fixing.
https://bugzilla.gnome.org/show_bug.cgi?id=774379
Andrew Chadwick [Tue, 22 Nov 2016 10:28:40 +0000 (10:28 +0000)]
wintab tilt: Check return location for validity
https://bugzilla.gnome.org/show_bug.cgi?id=774265
Marek Cernocky [Tue, 22 Nov 2016 10:57:57 +0000 (11:57 +0100)]
Updated Czech translation
Andrew Chadwick [Sat, 19 Nov 2016 18:34:29 +0000 (18:34 +0000)]
win32: Fix tilt from Wintab devices
Move the orientation sanity-checks into the packet decode func.
Rationale: the packet handling func may otherwise read beyond the end of
device->last_axis_data.
Also expand them to cope with my test Huion's weird reporting.
Also correct the azimuth angle to align with GDK's presentation.
Most importantly, fix annoying comment typo.
https://bugzilla.gnome.org/show_bug.cgi?id=774265
Chun-wei Fan [Fri, 21 Oct 2016 07:26:42 +0000 (15:26 +0800)]
gtk/gtkprintoperation-win32.c: Fix for GTK+-4.0 API
We no longer have GtkPlug nor GtkWin32EmbedManifest for GTK+-4.x, and it
is not entirely clear at this point what would be the "best" replacement
for them, but this issue here prevents GTK+-3.89.x building on Windows.
As a result, this is a fast port to avoid using APIs that have been
removed for 4.x, and things seem to work properly (the print.c page
printed).
https://bugzilla.gnome.org/show_bug.cgi?id=773299
Matthias Clasen [Mon, 21 Nov 2016 10:57:17 +0000 (05:57 -0500)]
3.89.1
Andrew Chadwick [Sat, 19 Nov 2016 03:26:29 +0000 (03:26 +0000)]
wintab: fix skipping of odd-numbered devices
Fix a regression introduced in
4ce6d1060104e7072eec347370999bfd3fe69dc0
which causes devices with an odd-numbered zero-based index in the list
to be passed over incorrectly. This might present as yet another "device
does not send pressure" bug for ~50% of devices out there.
This commit also closes off another potential segfault for wintab_devices
lists which have an odd length.
https://bugzilla.gnome.org/show_bug.cgi?id=774699
Emmanuele Bassi [Mon, 21 Nov 2016 16:24:34 +0000 (16:24 +0000)]
Bump the Graphene dependency
The initialization macros for Point, Point3D, Size, and Rectangle have
been modified in Graphene 1.5.1 to allow their use as compound
literals.
Emmanuele Bassi [Mon, 21 Nov 2016 16:21:38 +0000 (16:21 +0000)]
Use Graphene init macros for compound literals
The Graphene init macros can now be used for compound literals, which
means we need to update our mixed uses.
Gustavo Noronha Silva [Thu, 17 Nov 2016 17:15:50 +0000 (15:15 -0200)]
Fix off by one in check for GtkRoundedBox containing a rectangle
When checking if a rectangle is contained by the rounded box, the code
will refuse a rectangle which is the exact size as the one backing the
rounded box, since it checks for greater or equal width and height.
Check for greater only instead.
https://bugzilla.gnome.org/show_bug.cgi?id=774114
Balázs Meskó [Mon, 21 Nov 2016 09:35:08 +0000 (09:35 +0000)]
Update Hungarian translation
Balázs Meskó [Mon, 21 Nov 2016 09:33:59 +0000 (09:33 +0000)]
Update Hungarian translation
Chun-wei Fan [Mon, 21 Nov 2016 07:51:21 +0000 (15:51 +0800)]
Visual Studio builds: Rename broadwayd to gtk4-broadwayd
We need to update the solution file and the projects that refer to
broadwayd.
Chun-wei Fan [Mon, 21 Nov 2016 07:40:28 +0000 (15:40 +0800)]
gdk/win32/gdkwindow-win32.c: Fix build
Fix the assignment of ->create_draw_context, in which an underscore is
accidently added.
Chun-wei Fan [Mon, 21 Nov 2016 07:09:35 +0000 (15:09 +0800)]
build: Complete renaming of broadwayd to gtk4-broadwayd
The parts where the Visual Studio projects are generated must also be updated
so that 'make dist' will work properly.
Matthias Clasen [Sun, 20 Nov 2016 12:46:29 +0000 (07:46 -0500)]
Update for 3.89.1
Matthias Clasen [Sun, 20 Nov 2016 12:46:47 +0000 (07:46 -0500)]
Some additions to the migration guide
Matthias Clasen [Sun, 20 Nov 2016 11:12:32 +0000 (06:12 -0500)]
fishbowl: Fix up initial text
Avoid the text changing from "0 fish" to "0 icons" right
after opening the fishbowl demo.
Benjamin Otte [Sun, 20 Nov 2016 10:47:32 +0000 (11:47 +0100)]
API: gdk: Remove ability to render window contents
The functions gdk_pixbuf_get_from_window() and
gdk_cairo_set_source_window() are unreliable and depend on the windowing
system (they work great on X11 and Win32, less so on Quartz and Wayland).
With the switch to new drawing API and OpenGL, we can definitely no
longer support a generic way to snapshot windows.
People should either write windowsystem-specific code or draw their
widgets directly - like with gtk_widget_draw() - if they need to get a
rendering.
Benjamin Otte [Sun, 20 Nov 2016 10:44:19 +0000 (11:44 +0100)]
modules: Add a check for GTK3 symbols
This way, we can warn if GTK2 or GTK3 are linked into libgtk4.
Benjamin Otte [Sun, 20 Nov 2016 10:43:09 +0000 (11:43 +0100)]
tools: Rewrite screenshotting code for shooter
Uses X directly, so bypasses both the need to query the root window and
to draw window contents.
Benjamin Otte [Sun, 20 Nov 2016 10:20:34 +0000 (11:20 +0100)]
reftest: Make screenshot code work without GDK
GDK does not support taking images of GDK windows.
Benjamin Otte [Sun, 20 Nov 2016 10:19:32 +0000 (11:19 +0100)]
build: Don't link against libgtk and libgdk
libgdk is statically linked these days, so if you link against it, all
of its symbols will exist twice: Once in libgtk.so and once in your
binary.
Benjamin Otte [Sun, 20 Nov 2016 07:29:21 +0000 (08:29 +0100)]
tests: Remove outdated tests
The tests read a nonexisting colorprofile, try to convert stuff read
from the window into it, do things that gdk-pixbuf should test and
then aren't even integrated into the testuite.
Sheesh.
Benjamin Otte [Sun, 20 Nov 2016 06:27:00 +0000 (07:27 +0100)]
window: Remove unused destroy_draw_context vfunc
Benjamin Otte [Sun, 20 Nov 2016 06:16:32 +0000 (07:16 +0100)]
gdk: Make each backend have a custom GdkDrawingContext subclass
Benjamin Otte [Sun, 20 Nov 2016 04:29:03 +0000 (05:29 +0100)]
gtk-demo: Allow locking of icon count in fishbowl demo
I'm not sure I'm proud of the hack to get the changing icon into the UI
file without having to write code. But it works.
Benjamin Otte [Sun, 20 Nov 2016 04:28:52 +0000 (05:28 +0100)]
cairorenderer: Record cpu time in the profiler
Benjamin Otte [Sun, 20 Nov 2016 02:53:26 +0000 (03:53 +0100)]
inspector: Redo recording list
- Make the rows larger
- Display the elapsed time between renderings
- Display if it was a full or a partial redraw
- Add a toggle button to display profiler info
Benjamin Otte [Sun, 20 Nov 2016 02:52:56 +0000 (03:52 +0100)]
inspector: Pass the renderer when recording
... and collect the profiler information from the renderer.
Benjamin Otte [Sun, 20 Nov 2016 00:41:43 +0000 (01:41 +0100)]
inspector: Record a "start" event whenever we start recording
Matthias Clasen [Sun, 20 Nov 2016 02:18:20 +0000 (21:18 -0500)]
Drop deprecated gtk_dialog_get_action_area
Add an internal version for the few places where we still need it,
and drop it from everywhere else.
Matthias Clasen [Sat, 19 Nov 2016 23:32:11 +0000 (18:32 -0500)]
Make unknown window types fatal
This helps gcc to see that there's no point in warning about
gdk_window being used uninitialized.
Benjamin Otte [Sat, 19 Nov 2016 20:28:18 +0000 (21:28 +0100)]
render: Refactor background drawing code
We can query the blend mode inside the paint function.
Benjamin Otte [Sat, 19 Nov 2016 19:55:08 +0000 (20:55 +0100)]
inspector Reselect bottom row in recorder
When inserting a new recording and the bottommost row was selected,
select the newly added row. This way, you can observe the ongoing
recording.
Benjamin Otte [Sat, 19 Nov 2016 19:38:22 +0000 (20:38 +0100)]
render: Propagate snapshot drawing to box shadows
This decouples actual background drawing from shadow drawing in the
snapshot case.
We also now create seperate nodes for shadows vs for backgrounds.
Benjamin Otte [Sat, 19 Nov 2016 19:13:54 +0000 (20:13 +0100)]
cssshadows: Reengineer API
This way we have an API to query extents per shadow and I want that in
the next patch.
Benjamin Otte [Sat, 19 Nov 2016 18:58:23 +0000 (19:58 +0100)]
snapshot: Move GtkSnapshot declaration to gtypes.h
Matthias Clasen [Sat, 19 Nov 2016 18:51:50 +0000 (13:51 -0500)]
Document gtk_menu_place_on_monitor
Matthias Clasen [Sat, 19 Nov 2016 18:46:13 +0000 (13:46 -0500)]
Add some things to the sections file
This makes gtk-doc happier.
Matthias Clasen [Sat, 19 Nov 2016 18:45:58 +0000 (13:45 -0500)]
Small documentation additions
Matthias Clasen [Sat, 19 Nov 2016 18:45:04 +0000 (13:45 -0500)]
More work towards a clean doc build
Tell gtk-doc about more private headers.
Matthias Clasen [Sat, 19 Nov 2016 18:44:36 +0000 (13:44 -0500)]
Don't confuse gtk-doc
It doesn't like doc comments for non-api.
Matthias Clasen [Sat, 19 Nov 2016 18:36:08 +0000 (13:36 -0500)]
Drop docs for no-longer-existing API
Poor gtk-doc gets confused so easily...
Matthias Clasen [Sat, 19 Nov 2016 18:30:27 +0000 (13:30 -0500)]
Add gtk_im_context_simple_add_compose_file